A web application works via a client-server interaction in which assets such as static images, video, or other files are stored on a remote database and delivered to the client (e.g., a web browser) over a network via progressive download using Hypertext Transfer Protocol (HTTP). Accordingly, the asset is provided to the user on a one-time basis upon request. A conventional web application utilizes known techniques by which assets are secured on the remote server to prevent unauthorized access and download. For example, the assets may be encrypted such that the asset is required to be decrypted for the web application to access the asset. There are also complementary methods for preventing access to the asset within the web client. For example, the web application may include an authentication of the user for the asset to be accessed. However, there are instances when even authorized users for a particular asset have abused the authorization and intercepted the asset during the download process.
Conventional Digital Rights Management (DRM) systems have been employed to protect high-value assets, but these systems often require additional costs or performance overheads that make them undesirable to deploy on lighter-weight web applications. As a consequence, when applied to lightweight web applications, a slow and relatively unresponsive functionality results. The encryption process for the asset may require excessive processing power which in turn also adds excessive overhead to the process. Thus, the server-side is forced to provide these services and absorb the costs/overheads. The client-side may also be required to include a corresponding system to decrypt the encoded asset. Thus, the client-side may require additional time to properly receive the asset, thereby reducing an efficiency of the asset receiving process. In addition, the conventional DRM systems are often not compatible with common web application programming libraries which often require further investment in engineering resources and degradation of user experience. Furthermore, the conventional DRM systems can involve costly licensing or other fees which add to the total cost of delivering the assets.
Accordingly, there is a need for a simple asset protection method for light weight implementations which is integrated with common client/server web applications using common web programming languages (e.g., JavaScript), is minimally impactful on the consumer experience of web applications including the memory and processing overhead and responsiveness of the user-facing components of the applications, does not require expensive licensing, and protects against asset interception during HTTP delivery.